feat(schemas): merge the substance from the parallel schema set - #9
Merged
Conversation
The archive was described as files missing from the repo. Five of its six
YAML files already existed here, in a different shape, so dropping them in
was not an option:
34/34 aux-audit tests failed
pattern coverage fell 12/12 -> 5/12
The two versions are a fork of the same standard, not one standard split
in half:
ids H01 / T01 vs aux.H01 / aux.T01
list key trust_stages vs stages
gap fields heuristic, severity vs heuristic_ref, severity_default
fix patterns dissent-surface, vs user-aligned-objective,
scope-boundary, memory-policy-scoping,
version-diff, ... behavioral-contract, ...
The last row is the one that matters. Seven gaps named fix patterns that
have no folder here, because both sides invented names for the same fixes.
That is a vocabulary decision, not a merge conflict, so nothing in this
commit touches it.
What is taken is the substance, added to the existing files without
touching an id or any key aux-audit reads:
- aux-heuristics: `test` on all ten — the sentence a reviewer checks
against — plus mechanisms, trajectory, spectrum, note and
high_failure_frequency where the source had them
- trust-gap-taxonomy: `detection` on all twelve. The taxonomy said what
breaks and how to fix it; it never said how to find it
- trust-architecture: autonomy levels L1-L5, the ~40% trust budget with
its hidden-spend sources, the consequence cap mapping heat band to
autonomy ceiling, and the enforcement rule that a prompt is a request
while a tool boundary is a control. The stages block is untouched
- brain-spec.schema.yaml: new, no collision, and the one file the site
declared that genuinely was not here
Relational fields (related_patterns, related_gaps, related_schema) were
dropped on purpose — they point into the other ID space, which is exactly
the part that conflicts.
brain-spec is JSON Schema draft 2020-12 while agent-spec.schema.yaml is a
bespoke descriptive format. Its header says so rather than leaving a
reader to trip over it.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MhpqWEvwKp7NrmJfdXYq4M
This was referenced Sep 4, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does
An archive arrived described as schemas missing from the repo. Five of its six YAML files already existed here in a different shape, so it is not a gap to fill — it is a fork of the same standard. This takes the substance from it additively, without touching an ID or any key
aux-auditreads, and adds the one file that genuinely was absent.Why the files could not simply be dropped in
Tested on a scratch copy before touching anything:
H01/T01aux.H01/aux.T01trust_stagesstagesheuristic,severityheuristic_ref,severity_default,trust_stagedissent-surface,scope-boundary,version-diff,memory-editor,source-citation,calibration-cueuser-aligned-objective,memory-policy-scoping,behavioral-contract,confidence-cues, …The last row is the one that matters. Seven gaps named fix patterns with no folder in this repo, because both sides invented names for the same fixes. That is a vocabulary decision, not a merge conflict, so nothing here touches it — see Out of scope.
What is taken
Added to the existing files. No ID changed, no key
aux-auditreads changed.aux-heuristics.yaml—teston all ten: the sentence a reviewer checks a product against, which the repo's version never had. Plusmechanisms,trajectory,spectrum,noteandhigh_failure_frequencywhere the source carried them.trust-gap-taxonomy.yaml—detectionon all twelve. The taxonomy said what breaks and how to fix it; it never said how to find it. That was the real hole.trust-architecture.yaml— autonomy levels L1–L5, the ~40% trust budget with its hidden-spend sources, the consequence cap mapping heat band → autonomy ceiling, and the enforcement rule that a prompt is a request, a tool boundary is a control.stagesis untouched; a comment says so, next to the block.brain-spec.schema.yaml— new. No collision, and the one file the site declared that genuinely was not here.Relational fields (
related_patterns,related_gaps,related_schema) were dropped deliberately — they point into the other ID space, which is precisely the part that conflicts.Linked Issue
None. No IDs introduced or renamed, so CONTRIBUTING's
debaterequirement does not apply. The vocabulary conflict below will need one.Type
No renames, so no migration note applies.
Contribution bar — checklist
debateIssue first. — none introduced or renamed.detectionfield.yamllintclean with zero warnings,check:schemasclean,check-coverage.py12/12, all relative links resolve.Out of scope — four things this leaves open
dissent-surfacevsuser-aligned-objective,scope-boundaryvsmemory-policy-scoping, and four more. Two names for the same fix. Needs adebateIssue and a decision on which is canon; the seven pattern folders, their diagrams andcheck-coverage.pyfollow from it.trust-contract.yaml. The incoming file is a pattern catalogue — 6 patterns, a 24-entry catalog, required patterns per autonomy mode. The repo's file is a single example contract. Different documents wearing the same filename. The catalogue looks like it wants to be its own file.memory-policy.yamlvsmemory-policy.schema.yaml. Same split: incoming is a policy vocabulary (classes, retention, user rights, provenance), the repo's is a schema for writing one. The site declaresmemory-policy.yaml, so this is also a naming mismatch of the same kind already fixed foragent-spec.schema.yaml.agent-spec.schema.yamlas real JSON Schema. The incoming version is draft 2020-12 and is arguably better than the bespoke format here. Swapping it means rewritingspec.tsand its tests — a genuine improvement, but its own piece of work, not a drop-in. The archive'svalidate.pyandexample-agent-spec.yamlare tied to that shape and are held back with it.🤖 Generated with Claude Code
https://claude.ai/code/session_01MhpqWEvwKp7NrmJfdXYq4M
Generated by Claude Code